package com.newlink.building.userinfo.mvp.contract

import android.content.Context
import com.newlink.building.common_base.base.IModel
import com.newlink.building.common_base.base.IPresenter
import com.newlink.building.common_base.base.IView
import com.newlink.building.common_base.model.bean.HttpResult
import com.newlink.building.common_base.model.bean.VersionBean
import io.reactivex.Observable

/**
 * @author wangyang
 * @date 2022/9/20
 * @description 我的——关于页面的Contract
 */
interface Module_UserInfo_AboutContract {

    interface Model : IModel {
        fun getData(token: String): Observable<HttpResult<VersionBean>>
    }

    interface View : IView {
        fun showData()
        fun hasNewVersion(bean: VersionBean)

        fun noNewVersion()
    }

    interface Presenter : IPresenter<View> {
        fun getData(context: Context, token: String)
        fun getCurrentAppVersion(context: Context): String
    }
}